package com.example.warehouse.bus.dao.persist.repository;

import com.example.warehouse.bus.pojo.entity.BusOutport;
import com.example.warehouse.bus.pojo.param.BusOutportUpdateParam;
import com.example.warehouse.bus.pojo.vo.BusOutportListItemVO;
import com.example.warehouse.common.pojo.vo.PageData;
import com.example.warehouse.common.security.CurrentPrincipal;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author XXH
 * @Date 2023/7/15 23:32
 * @Version 1.0
 */
public interface IBusOutportRepository {

    /**
     * 新增退货数据的接口
     * @param busOutport
     * @return 插入条数
     */
    int insert(BusOutport busOutport);

    /**
     * 根据ID删除数据(逻辑删除)
     * @param id
     * @param currentPrincipal
     * @return 受影响条数
     */
    int deleteById(Long id, CurrentPrincipal currentPrincipal);

    /**
     * 根据id修改退货数据
     * @param id
     * @param busOutportUpdateParam
     * @return
     */
    int updateById(Long id,BusOutportUpdateParam busOutportUpdateParam);

    /**
     * 查询退货(Outport)列表--查
     * @param pageNum 页码
     * @param pageSize 每页记录数
     * @return 退货分页数据信息
     */
    PageData<BusOutportListItemVO> list(Integer pageNum,Integer pageSize) ;


    /**
     * 陌生的一个接口,由安康同志编写,我不知道是干啥用的
     * @return
     */
    List<BusOutport> selectAllOut();
}
